Start with a file array with a resonable preallocated size
authorFederico Mena Quintero <federico@novell.com>
Wed, 26 Aug 2009 23:52:24 +0000 (18:52 -0500)
committerBenjamin Otte <otte@gnome.org>
Thu, 15 Oct 2009 20:06:13 +0000 (22:06 +0200)
g_array_new() doesn't reserve any size by default, so during the initial population
of the file array, we'll do more reallocs than strictly needed.  We'll start with
a reasonable preallocated size, in this case the number of files which we can
get in a single chunk out of GIO.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
gtk/gtkfilesystemmodel.c

index 7cba000b2e8a178e3a135b2b2b81ec5433da8c26..3390ab2e03ea2200a75f180d9235544795f8ec02 100644 (file)
@@ -1111,7 +1111,7 @@ gtk_file_system_model_set_n_columns (GtkFileSystemModel *model,
 
   model->sort_list = _gtk_tree_data_list_header_new (n_columns, model->column_types);
 
-  model->files = g_array_new (FALSE, FALSE, model->node_size);
+  model->files = g_array_sized_new (FALSE, FALSE, model->node_size, FILES_PER_QUERY);
   /* add editable node at start */
   g_array_set_size (model->files, 1);
   memset (get_node (model, 0), 0, model->node_size);